package com.cat.recruit.service;

import com.cat.recruit.common.result.Result;
import com.cat.recruit.config.JwtUserDetails;
import com.cat.recruit.entity.User;
import org.springframework.security.core.userdetails.UserDetails;


public interface UserService {
    Result login(String code);
    User createUser(String openId);
    int selectUserIsExist(String openId);
    Result getInformation(String openId);
    Result bookInterview(Integer appointmentId,String token);
    Result getInterviewTime();
    Result getAppointmentState(JwtUserDetails userDetails);
    Result cancelInterview(Integer appointmentId, JwtUserDetails userDetails, String State);

    /**
     * 用户报名
     * @param userName 用户名
     * @param userNumber 学号
     * @param academy 学院
     * @param direction 方向
     * @param phone 手机号
     * @param email 邮箱
     * @param selfIntroduction 自我介绍
     * @param userDetails 用户详情
     * @return Result
     */
    Result apply(String userName, String userNumber, String academy, String direction, String phone, String email, String selfIntroduction, JwtUserDetails userDetails);
}
